#ifndef ID3_H
#define ID3_H

#include <QDialog>

class QLabel;
class QLineEdit;
class QPushButton;
class QTimer;
class CMyId3UI : public QDialog
{
	Q_OBJECT

public:
	CMyId3UI( QWidget *parent = 0 );

protected slots:
	void OpenDirPath( void );
    void BeforeProcess( void );
	void Process( void );
	void IsComplete( void );
	void Help( void );

private:
	void InitGui( void );
	void OtherInit( void );
	void GetMusicPathList( const QString& strCurPath );
	bool FilterSuffix( const QString& strMusic );
	void Move( const QString& strTo, const QString& strFrom );
    void ProcessMusics( const QString& strMusicPath );
	void GetID3Artist( QString& strArtist, const QString& strMusicPath );
	void ShowProgress( void );

private:
	QLineEdit*   m_DirPathLineEdit;
	QPushButton* m_helpBtn;
	QLineEdit*   m_SuffixLineEdit;
	QLabel*      m_inforLabel;
	QPushButton* m_openBtn;
	QPushButton* m_startBtn;

	QStringList  m_musicSuffixList;
	QString      m_strDateTimeDir;
	QString      m_strSelectPath;

	QStringList  m_strExsitDirsList;
	bool         m_bComplete;
	QTimer*      m_pTimer;
};

#endif
